Execution unit
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
In computer engineering, an execution unit (E-unit or EU) is a part of a processing unit that performs the operations and calculations forwarded from the instruction unit.cite-ref-1[1] It may have its own internal control sequence unit (not to be confused with a CPU's main control unit), some registers,cite-ref-2[2] and other internal units such as an arithmetic logic unit,cite-ref-3[3] address generation unit, floating-point unit, load–store unit, branch execution unitcite-ref-4[4] or other smaller and more specific components, and can be tailored to support a certain datatype, such as integers or floating-points.cite-ref-5[5]
It is common for modern processing units to have multiple parallel functional units within its execution units, which is referred to as superscalar design.cite-ref-6[6] The simplest arrangement is to use a single bus manager unit to manage the memory interface and the others to perform calculations. Additionally, modern execution units are usually pipelined.
References
cite-note-11. ↑ "Execution Model Overview". Intel. Retrieved 2024-06-23.
cite-note-22. ↑ "AMD Instinct™ MI100 microarchitecture — ROCm Documentation". rocm.docs.amd.com. Retrieved 2024-06-23.
cite-note-33. ↑ "Intel® Iris® Xe GPU Architecture". Intel. Retrieved 2024-06-23.
cite-note-44. ↑ citerefkanter2012Kanter, David (November 13, 2012). "Intel's Haswell CPU Microarchitecture". Real World Tech.
cite-note-55. ↑ "Execution Unit" discussion from the University of Massachusetts Amherst, archived on the Wayback Machine
cite-note-66. ↑ citerefcohen2016Cohen, William (2016-03-14). "Superscalar Execution". Red Hat Developer. Retrieved 2024-06-23.